package com.pek.annontation.Permit;

//用于方法上的注解

import java.lang.annotation.*;

@Target(ElementType.METHOD)
@Retention(RetentionPolicy.RUNTIME)
public @interface Permit {
    /**
     * 根据需要的权限拦截
     * <p>SELECT | INSERT     | UPDATE    | DELETE | ALL      | ADMIN</p>
     * <p>查询   | 添加       | 修改      | 删除    | 全部权限  | 管理员</p>
     */
    UserPermit[] value() default {};

    /**
     * 根据等级拦截
     * <P>拥有ADMIN权限的用户不会进入等级拦截</P>
     *
     * @return
     */
    int level() default 0;

    /**
     * 执行访问时间拦截 (毫秒)
     * <p>所有用户都会被time拦截 默认0不拦截</p>
     */
    int time() default 0;

    /**
     * 拦截类型
     * <p>默认根据权限拦截 可以使用PermitType修改拦截类型</p>
     *
     * @return
     */
    PermitType type() default PermitType.PERMIT;
}
